The present invention relates to a game device to be mounted in a video game machine or elsewhere, and in particular to an improved technology for generating images modelled on a motor-bike or similar moving object.
Advances in computer graphics technology in recent years have led to the appearance of game devices which display virtually generated space (hereinafter referred to as xe2x80x98virtual spacexe2x80x99) as an image observed from one viewpoint within the space (hereinafter referred to as xe2x80x98virtual imagexe2x80x99). Among such game devices, those which are based on motor-bike and similar races continue to be very popular.
In the following description, the word xe2x80x98bikexe2x80x99 is to be taken to signify a motor-bike (moving object) which is displayed in virtual space as a running model for playing the game. In particular, the motor-bike which the player himself operates will be referred to as a xe2x80x98specific bikexe2x80x99, while bikes other than the specific bike which compete with the specific bike will be referred to as xe2x80x98other bikesxe2x80x99. Similarly, the word xe2x80x98run(ning)xe2x80x99 is to be taken to signify the conceptual running of the bike along a xe2x80x98coursexe2x80x99 set within virtual space. Video game devices of this sort comprise an input device which is modelled on a real bike and generates operating signals when operated by the player, a data processing device (CPU) which controls the running of the bike in accordance with operating signals supplied from the input device on the basis of image and other data determining the position of objects (including both moving objects such as people or cars, and static objects such as buildings or stones), and a display device which generates the image of the bike and displays it together with background and other images on a screen. Image data and the various types of data which are necessary in order to control the running of the bike are stored in a memory.
Playing the game consists in causing the specific bike operated by the player to run along a course together with other bikes, whereof the running is controlled by the game device, the two competing to win the track record. The player manages the corners (curves) in the course by tilting the input device in the same way as if he were riding a motor-bike along a real racing course, and operates the xe2x80x98throttlexe2x80x99 and xe2x80x98brakesxe2x80x99 on the input device. The data processing device specifies the position of the specific bike on the basis of the operating signals which are supplied in accordance with the operation of the player, and also specifies the running positions of the other bikes. The display device generates image data showing the virtual space from the position of the specific bike on the basis of image data of the other bikes, background and other details within the virtual space as specified by the data processing device. The player operates the input device while watching the image which is displayed on a screen fitted to the front of the input device. Thus, the player is able to enjoy playing the game with a sensation resembling that of driving a real motor-bike.
Hitherto it has been normal for track data, which is programmed in advance into the memory, to be used to run the other bikes with which the player competes. This track data consists of rows of position coordinates along the course. The data processing device reads these position coordinates with a fixed timing, and controls the running of the other bikes in such a way that they pass through the coordinates which have been read.
However, this conventional video game device suffers from the following drawback.
Details of the path cannot be altered once they have been programmed. If a player is accustomed to the trajectories along which the other bikes run in accordance with this track data, it becomes easy for him to win as he gains in experience. This means that the game becomes simple for him, and he loses interest. If large numbers of players become experienced in the same type of game in this manner, the popularity of the game soon wanes.
One possible way of counteracting this would be for the track data of the bike which a player has actually operated to be used without modification as track data for the other bikes. However, it is thought that doing this would result in an unnatural image being displayed.
The track data of a specific bike is obtained in the form of a row of position coordinates which have been sampled with a fixed timing along the route which that bike traversed when operated by a player. To utilise these as the path for another bike involves reading this row of position coordinates in the correct order with a fixed timing, and controlling the running of the other bike in such a manner that it passes through the position coordinates which have been read.
However, it is not always the case that the player""s operations are perfect, and he will often collide into the side wall (the fence or wall which separates the spectators from the course) or into other bikes. If the running of the other bikes is to be controlled on the basis of track data which has been obtained under conditions of operation of this sort, the same running conditions will be reproduced as when the data was obtained. In other words, the other bikes which are running on the basis of this track data will run in an unnatural manner, colliding into the side wall or into objects irrespective of whether there are other bikes in the vicinity.
Consequently, in order to solve this drawback, it becomes necessary to correct the track data where this causes it to look as if the bike has left the course, and to generate data so that the bike does not stop even if the path is such that two bikes collide with each other and suddenly stop.
Moreover, as FIG. 9A demonstrates, conventional video game devices generate the image on the presupposition that the viewpoint used for generating the virtual image while running (shown by the camera C) is located on the bike.
However, an image obtained in this manner does not necessarily reflect the image which someone actually riding on a bike normally perceives. To take the example of cornering during a race, an actual rider will tilt the body of the bike and lean outwards, while keeping his head vertical. Thus, in the view as perceived by the rider the horizon scarcely tilts at all. In conventional video games, on the other hand, since the camera is located on the specific bike B as shown in FIG. 9A, the camera tilts together with the specific bike B in relation to the road surface when the bike itself tilts while cornering, and an image is generated in which the whole horizon tilts (FIG. 9B).
If the bike topples over, the rider should really be thrown off it, and the image should be displayed from the perspective of the rider who has been thrown. However, if the camera is situated on the bike, the image which is displayed is as viewed from the toppled bike. Thus, in order to solve drawbacks of this kind, the camera (viewpoint) needs to be relocated where an actual rider perceives it.
With a view to solving the abovementioned problems, it is a first object of the present invention to provide a game which players will not tire, this object being achieved by using the track data whereby a player caused one moving body to run for the purpose of generating data which causes the other moving bodies to run. Moreover, it is a second object of the present invention to provide a natural and realistic image, by determining the actual position of the driver""s perspective and generating a virtual image from that position.
The game device described in claim 1 is designed to solve the first problem, and is a game device wherein images of objects (modelled on motor-bikes or cars) moving through a virtual space are generated, characterised in that track data (rows of position coordinates acquired with a fixed timing, etc.) is generated by sampling at stipulated intervals of time the path along which a first moving object has moved, transit points (points at fixed intervals along the course etc.) are set at stipulated intervals of distance along the path indicated by the track data, and a second moving object is caused to move in such a manner as to pass through the transit points.
The game device of claim 2 is one as described in Claim 1, wherein if while the second moving object is being moved in such manner as to pass through the transit points it is judged likely to collide into an obstacle within the virtual space, the second moving object is allocated a new course (change of path, acceleration, deceleration, stop, etc.) which allows it to avert the collision.
It should be added that the word xe2x80x98obstaclexe2x80x99 as used here signifies not only static objects such as walls and posts, but is a concept which includes running moving objects (whether this be a first or a second moving object) and even the road surface itself.
The game device described in Claim 3 is designed to solve the first problem, and is a game device wherein images of a plurality of objects moving through a virtual space are generated, characterised in that it has means for generating track data whereby track data is generated by sampling at stipulated intervals of time the path along which a specific moving object from among the plurality of moving objects moves in response to an externally supplied operational signal (a signal generated as a result of the operation of the input device by a player), means for setting transit points whereby transit points are set at stipulated intervals of distance along the course indicated by the track data on the basis of track data generated in the past by the means for generating track data, and means for control whereby each of the other moving objects is caused to move along a route which passes through the transit points set by the means for setting transit points.
The game device described in Claim 4 is designed to solve the first problem, and is a game device as described in Claim 3, wherein the means for generating track data has a memory wherein the track data for supplying to the means for setting transit points is stored, a sampling unit whereby positional data relating to the other moving objects indicated by the operational signals is acquired with a prescribed sampling timing, and the aggregate of the positional data which has been sampled is stored in the memory as new said track data, and a comparing output unit whereby every time the new track data is stored from the sampling unit, the new track data is compared on the basis of pre-programmed conditions of comparison (e.g. number of sampling points or comparative low frequency of collisions) with track data which has been stored in the memory in the past, and if it is judged to meet the conditions of comparison, stores the new track data in the memory as track data to be output to the means for setting transit points.
The game device described in Claim 5 is designed to solve the first problem, and is a game device as described in Claim 3, wherein the means for generating track data has a unit for setting a curvilinear route, whereby on the basis of the track data supplied from the means for generating track data a curvilinear route is set which passes through those points which are indicated by the positional data which constitutes the track data, and a unit for setting transit points, whereby transit points are set in such a manner that they are each roughly equidistant along the curvilinear route set by the unit for setting a curvilinear route.
The game device is further designed to solve the first problem, and is a game device as described in Claim 3, wherein the means for control has means for assessing collisions whereby on the basis of data regarding the transit points, indicating the transit points which each of the other moving objects has passed, and data regarding the position of obstacles, indicating the position of the obstacles which exist within the virtual space, the distance between a given other moving object and a given obstacle is calculated, and it is assessed whether or not a collision will take place between the other moving object and the obstacle, and means for controlling running whereby if it is judged that a said other moving object will collide with the obstacle, a new route is allocated to the other moving object so as to avert collision with the obstacle.
The game device is further designed to solve the second problem, and is a game device wherein viewpoint images are generated whereby a virtual space is viewed from a stipulated viewpoint which moves together with a specific moving object (e.g. a moving object which moves in accordance with the operations of a player), characterised in that the stance of the moving object within the virtual space is determined, the position of the viewpoint of the virtual driver who moves together with the moving object is determined, and the viewpoint image of the virtual space viewed from the position of the viewpoint is generated.
The game device is further designed to solve the second problem, and is a game device: wherein viewpoint images are generated whereby a virtual space is viewed from a stipulated viewpoint which moves together with a specific moving object, characterised in that it has means for determining stance whereby the stance of the moving object within the virtual space is determined, means for determining head position whereby on the basis of the stance of the specific moving object determined by the means for determining stance, relative position coordinates between the head of the virtual driver, which moves with the specific moving object, and the specific moving object itself are determined, and means for controlling display whereby the viewpoint is set on position coordinates determined by the means for determining head position, and the viewpoint image is generated by approximating the direction of a specified coordinate axis of the viewpoint image viewed from the viewpoint to a preset vertical direction in the space.
The game device is further designed to solve the second problem, and is a game wherein images of objects moving through a virtual space are generated, characterised in that track data is generated by sampling at stipulated intervals of time the path along which a first moving object has moved, transit points are set at stipulated intervals of distance along the path indicated by the track data, and a second moving object is caused to move in such a manner as to pass through the transit points.
The game device is further designed to solve the second problem, and is a game as described above, wherein if while the second moving object is being moved in such a manner as to pass through the transit points it is judged likely to collide into an obstacle within the virtual space, the second moving object is allocated a new course which allows it to avert the collision.
The game device is further designed to solve the second problem, and is a method of processing a game wherein viewpoint images are generated whereby a virtual space is viewed from a stipulated viewpoint which moves together with a specific moving object, characterised in that the stance of the moving object within the virtual space is determined, the position of the viewpoint of the virtual driver who moves together with the moving object is determined, and the viewpoint image of the virtual space viewed from the position of the viewpoint is generated.
The game device is further designed to solve the second problem, and is a machine-readable recording medium whereon a game processing program has been recorded whereby images of objects moving through a virtual space are generated, characterised in that track data is generated by a computer by sampling at stipulated intervals of time the path along which a first moving object has moved, transit points are set at stipulated intervals of distance along the path indicated by the track data, and a second moving object is caused to move in such a manner as to pass through the transit points.
The game device is further designed to solve the second problem, and is a machine-readable recording medium whereon a game processing program has been recorded whereby images of objects moving through a virtual space are generated, characterised in that track data is generated by a computer by sampling at stipulated intervals of time the path along which a first moving object has moved, transit points are set at stipulated intervals of distance along the path indicated by the track data, and a second moving object is caused to move in such a manner as to pass through the transit points, and if while the second moving object is being moved in such manner as to pass through the transit points it is judged likely to collide into an obstacle within the virtual space, the second moving object is allocated a new course which allows it to avert the collision.
The game device is further designed to solve the second problem, and is a machine-readable recording medium whereon a game processing program has been recorded whereby images of objects moving through a virtual space are generated, characterised in that the stance of the moving object within the virtual space is determined by a computer, the position of the viewpoint of the virtual driver who moves together with the moving object is determined, and the viewpoint image of the virtual space viewed from the position of the viewpoint is generated.